When & Where
Date: 16th - 20th September 2019, 08:00-17:30
Location: Pakistan
Set up & Pre-work
To participate in this workshop, you will need to make sure you:
Download R and RStudio
Download the latest versions
Once R and Rstudio are both installed, if you open RStudio and things have gone according to plan then in the console you will see something like the following:
R version 3.6.1 (2019-07-05) -- "Action of the Toes"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
Install Necessary Packages
Open RStudio and paste the following code into your console, then press Enter to run it:
# Download packages from CRAN
install.packages(c("devtools", "knitr", "magrittr", "sf", "sp", "rmarkdown", "usethis", "ggplot2", "dplyr", "zoo", "reshape2", "scales", "maptools"))
These are the main packages for the workshop. If we require more then we can either install them from the web or from e.g. a USB if we have them.
Learning Objectives
From basic principles to advanced graphics. You will be able to
- Read-in, explore and write data sets
- Clean messy data and rearrange for analysis
- Plot and map different types of data
Organizers
- Nathan Green
- David Jorgensen
Schedule
Our agenda is below.
DAY 2 (17-9): Introduction
Pre-reading
- Introduction to R 10:00-12:00
- history and motivation
- R for data analysis
- RStudio GUI
- Console, scripts
- Basic types 13:00-14:30
- Data transformation 15:00-16:30
- Missing values
- Indexing, sorting, filtering
DAY 3 (18-9): Handling data
Pre-reading
- Day 2 recap 9:30-10:00
- Pre-processing/munging 10:00-12:00
- base: join, merge, aggregate
- tidy data: dplyr
- regular expression
- Exploring data 13:00-15:00
- summary statistics
- tables and basic plots
- Writing data 15:30-16:30
DAY 4 (19-9): Outputs
Pre-reading
- Day 3 recap 9:30-10:00
- Plotting 10:00-11:30
- Maps 12:00-13:00
- Putting it all together 14:00-16:00
- plots for presentations
- maps for presentations
LS0tDQp0aXRsZTogIlBha2lzdGFuIFIgd29ya3Nob3AiDQpzaXRlOiBkaXN0aWxsOjpkaXN0aWxsX3dlYnNpdGUNCmRlc2NyaXB0aW9uOiBudWxsDQotLS0NCg0KPGJyPg0KDQo8Y2VudGVyPiFbXShodHRwczovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zLzUvNWEvRGVyYXdhcl9mb3J0LV9BX3ZpZXdfb2ZfdGhlX2ZvcnRfZnJvbV90aGVfYmFsY29ueV9vZl9hX21vc3F1ZS5qcGcpPC9jZW50ZXI+DQo8YnI+DQoNCiMjIyMgWW91IGNhbiBmaW5kIGFsbCBvZiBvdXIgd29ya3Nob3AgaW5mb3JtYXRpb24gb24gdGhpcyBzaXRlLiAgDQoNCjxicj4NCg0KIyBXaGVuICYgV2hlcmUNCg0KKipEYXRlOioqIDE2dGggLSAyMHRoIFNlcHRlbWJlciAyMDE5LCAwODowMC0xNzozMCAgDQoqKkxvY2F0aW9uOioqIFBha2lzdGFuDQoNCg0KPGJyPg0KDQoNCiMgU2V0IHVwICYgUHJlLXdvcmsNCg0KVG8gcGFydGljaXBhdGUgaW4gdGhpcyB3b3Jrc2hvcCwgeW91IHdpbGwgbmVlZCB0byBtYWtlIHN1cmUgeW91OiAgDQoNCg0KPGJyPg0KDQojIyMgRG93bmxvYWQgUiBhbmQgUlN0dWRpbw0KDQpEb3dubG9hZCB0aGUgbGF0ZXN0IHZlcnNpb25zIA0KDQoqIFIgaHR0cHM6Ly9jcmFuLnItcHJvamVjdC5vcmcvDQoqIFJTdHVkaW8gaHR0cHM6Ly93d3cucnN0dWRpby5jb20vcHJvZHVjdHMvcnN0dWRpby8jRGVza3RvcA0KDQpPbmNlIFIgYW5kIFJzdHVkaW8gYXJlIGJvdGggaW5zdGFsbGVkLCBpZiB5b3Ugb3BlbiBSU3R1ZGlvIGFuZCB0aGluZ3MgaGF2ZSBnb25lIGFjY29yZGluZyB0byBwbGFuIHRoZW4gaW4gdGhlIGNvbnNvbGUgeW91IHdpbGwgc2VlIHNvbWV0aGluZyBsaWtlIHRoZSBmb2xsb3dpbmc6DQoNCmBgYA0KUiB2ZXJzaW9uIDMuNi4xICgyMDE5LTA3LTA1KSAtLSAiQWN0aW9uIG9mIHRoZSBUb2VzIg0KQ29weXJpZ2h0IChDKSAyMDE5IFRoZSBSIEZvdW5kYXRpb24gZm9yIFN0YXRpc3RpY2FsIENvbXB1dGluZw0KUGxhdGZvcm06IHg4Nl82NC13NjQtbWluZ3czMi94NjQgKDY0LWJpdCkNCg0KUiBpcyBmcmVlIHNvZnR3YXJlIGFuZCBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFkuDQpZb3UgYXJlIHdlbGNvbWUgdG8gcmVkaXN0cmlidXRlIGl0IHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucy4NClR5cGUgJ2xpY2Vuc2UoKScgb3IgJ2xpY2VuY2UoKScgZm9yIGRpc3RyaWJ1dGlvbiBkZXRhaWxzLg0KDQpSIGlzIGEgY29sbGFib3JhdGl2ZSBwcm9qZWN0IHdpdGggbWFueSBjb250cmlidXRvcnMuDQpUeXBlICdjb250cmlidXRvcnMoKScgZm9yIG1vcmUgaW5mb3JtYXRpb24gYW5kDQonY2l0YXRpb24oKScgb24gaG93IHRvIGNpdGUgUiBvciBSIHBhY2thZ2VzIGluIHB1YmxpY2F0aW9ucy4NCg0KVHlwZSAnZGVtbygpJyBmb3Igc29tZSBkZW1vcywgJ2hlbHAoKScgZm9yIG9uLWxpbmUgaGVscCwgb3INCidoZWxwLnN0YXJ0KCknIGZvciBhbiBIVE1MIGJyb3dzZXIgaW50ZXJmYWNlIHRvIGhlbHAuDQpUeXBlICdxKCknIHRvIHF1aXQgUi4NCmBgYA0KDQojIyMgSW5zdGFsbCBOZWNlc3NhcnkgUGFja2FnZXMNCk9wZW4gUlN0dWRpbyBhbmQgcGFzdGUgdGhlIGZvbGxvd2luZyBjb2RlIGludG8geW91ciBjb25zb2xlLCB0aGVuIHByZXNzIEVudGVyIHRvIHJ1biBpdDoNCg0KDQpgYGB7ciwgZXZhbCA9IEZBTFNFfQ0KIyBEb3dubG9hZCBwYWNrYWdlcyBmcm9tIENSQU4NCg0KaW5zdGFsbC5wYWNrYWdlcyhjKCJkZXZ0b29scyIsICJrbml0ciIsICJtYWdyaXR0ciIsICJzZiIsICJzcCIsICJybWFya2Rvd24iLCAidXNldGhpcyIsICJnZ3Bsb3QyIiwgImRwbHlyIiwgInpvbyIsICJyZXNoYXBlMiIsICJzY2FsZXMiLCAibWFwdG9vbHMiKSkNCg0KYGBgDQoNCg0KVGhlc2UgYXJlIHRoZSBtYWluIHBhY2thZ2VzIGZvciB0aGUgd29ya3Nob3AuDQpJZiB3ZSByZXF1aXJlIG1vcmUgdGhlbiB3ZSBjYW4gZWl0aGVyIGluc3RhbGwgdGhlbSBmcm9tIHRoZSB3ZWIgb3IgZnJvbSBlLmcuIGEgVVNCIGlmIHdlIGhhdmUgdGhlbS4NCiANCg0KPGJyPg0KDQoNCg0KIyBMZWFybmluZyBPYmplY3RpdmVzDQogDQpGcm9tIGJhc2ljIHByaW5jaXBsZXMgdG8gYWR2YW5jZWQgZ3JhcGhpY3MuIFlvdSB3aWxsIGJlIGFibGUgdG8gDQoNCiogUmVhZC1pbiwgZXhwbG9yZSBhbmQgd3JpdGUgZGF0YSBzZXRzDQoqIENsZWFuIG1lc3N5IGRhdGEgYW5kIHJlYXJyYW5nZSBmb3IgYW5hbHlzaXMNCiogUGxvdCBhbmQgbWFwIGRpZmZlcmVudCB0eXBlcyBvZiBkYXRhDQoNCg0KPGJyPg0KDQojIE9yZ2FuaXplcnMNCg0KKiBOYXRoYW4gR3JlZW4NCiogRGF2aWQgSm9yZ2Vuc2VuDQoNCg0KPGJyPg0KDQojIFNjaGVkdWxlDQoNCk91ciBhZ2VuZGEgaXMgYmVsb3cuIA0KDQo8YnI+DQoNCiMjIyMgREFZIDIgKDE3LTkpOiBJbnRyb2R1Y3Rpb24NCg0KUHJlLXJlYWRpbmcNCg0KLSBgciB4ZnVuOjplbWJlZF9maWxlKCdUaGllbWUtMjAxOC1TaWduaWZpY2FuY2UucGRmJywgdGV4dCA9ICJSIGdlbmVyYXRpb24sIFNpZ25pZmljYW5jZSBNYWdhemluZSIpYA0KDQo8YnI+DQogICANCiogSW50cm9kdWN0aW9uIHRvIFIgMTA6MDAtMTI6MDANCiAgKyBoaXN0b3J5IGFuZCBtb3RpdmF0aW9uDQogICsgUiBmb3IgZGF0YSBhbmFseXNpcw0KICArIFJTdHVkaW8gR1VJDQogICsgQ29uc29sZSwgc2NyaXB0cw0KKiBCYXNpYyB0eXBlcyAxMzowMC0xNDozMA0KICArIGJhc2UNCiAgKyBkYXRlcyBhbmQgdGltZXMNCiAgICArIGByIHhmdW46OmVtYmVkX2ZpbGUoJ2V4ZXJjaXNlcy0xX2ludHJvLVJfZGF0YWZyYW1lLnBkZicpYA0KICAgICsgYHIgeGZ1bjo6ZW1iZWRfZmlsZSgnZXhlcmNpc2VzLTFfaW50cm8tUl9pbmRleC5wZGYnKWANCiAgICArIGByIHhmdW46OmVtYmVkX2ZpbGUoJ2V4ZXJjaXNlcy0xX2ludHJvLVJfbGlzdHMucGRmJylgDQogICAgKyBgciB4ZnVuOjplbWJlZF9maWxlKCdleGVyY2lzZXMtMV9pbnRyby1SX2xvZ2ljYWxzLnBkZicpYA0KICAgICsgYHIgeGZ1bjo6ZW1iZWRfZmlsZSgnZXhlcmNpc2VzLTFfaW50cm8tUl92ZWN0b3JzLnBkZicpYA0KKiBEYXRhIHRyYW5zZm9ybWF0aW9uIDE1OjAwLTE2OjMwDQogICsgTWlzc2luZyB2YWx1ZXMNCiAgICArIGByIHhmdW46OmVtYmVkX2ZpbGUoJ2V4ZXJjaXNlcy0xX2ludHJvLVJfTkFzLnBkZicpYA0KICArIEluZGV4aW5nLCBzb3J0aW5nLCBmaWx0ZXJpbmcNCg0KPGJyPg0KDQojIyMjIERBWSAzICgxOC05KTogSGFuZGxpbmcgZGF0YQ0KDQpQcmUtcmVhZGluZw0KDQotIGByIHhmdW46OmVtYmVkX2ZpbGUoJ3Y1OWkxMC5wZGYnLCB0ZXh0ID0gIlRpZHkgRGF0YSwgV2lja2hhbSIpYA0KLSBgciB4ZnVuOjplbWJlZF9maWxlKCdwZWVyai1wcmVwcmludHMtMzE4My5wZGYnLCB0ZXh0ID0gIkRhdGEgb3JnYW5pemF0aW9uIGluIHNwcmVhZHNoZWV0cywgQnJvbWFuIilgDQoNCjxicj4NCg0KKiBEYXkgMiByZWNhcCA5OjMwLTEwOjAwDQoqIFByZS1wcm9jZXNzaW5nL211bmdpbmcgMTA6MDAtMTI6MDANCiAgKyBiYXNlOiBqb2luLCBtZXJnZSwgYWdncmVnYXRlDQogICAgKyBgciB4ZnVuOjplbWJlZF9maWxlKCdleGVyY2lzZXMtMV9pbnRyby1SX2JpbmRpbmcucGRmJylgICANCiAgKyB0aWR5IGRhdGE6IGRwbHlyDQogICsgcmVndWxhciBleHByZXNzaW9uDQoqIEV4cGxvcmluZyBkYXRhIDEzOjAwLTE1OjAwDQogICsgc3VtbWFyeSBzdGF0aXN0aWNzDQogICsgdGFibGVzIGFuZCBiYXNpYyBwbG90cw0KKiBXcml0aW5nIGRhdGEgMTU6MzAtMTY6MzANCg0KPGJyPg0KDQojIyMjIERBWSA0ICgxOS05KTogT3V0cHV0cw0KDQpQcmUtcmVhZGluZw0KDQotIGByIHhmdW46OmVtYmVkX2ZpbGUoJ2plYWJlaGF2MDAwODgtMDE0MC5wZGYnLCB0ZXh0ID0gIkhvdyB0byBsb29rIGF0IGRhdGE6IEEgcmV2aWV3IG9mIEpvaG4gVy4gVHVrZXkncyBleHBsb3JhdG9yeSBkYXRhIGFuYWx5c2lzLCBDaHVyY2giKWANCi0gYHIgeGZ1bjo6ZW1iZWRfZmlsZSgnMTkwMy4wOTUxMi5wZGYnLCB0ZXh0ID0gIkVmZmVjdGl2ZSB2aXN1YWwgY29tbXVuaWNhdGlvbiBmb3IgdGhlIHF1YW50aXRhdGl2ZSBzY2llbnRpc3QsIFZhbmRlbWV1bGVicm9lY2tlIilgDQoNCjxicj4NCg0KKiBEYXkgMyByZWNhcCA5OjMwLTEwOjAwDQoqIFBsb3R0aW5nIDEwOjAwLTExOjMwDQogICsgZ2dwbG90Mg0KICArIGNvbG91ciB0aGVtZXMNCiAgICArIGByIHhmdW46OmVtYmVkX2ZpbGUoJ2V4ZXJjaXNlcy0zX3Bsb3RzX2Jhc2ljLnBkZicpYA0KICAgICsgYHIgeGZ1bjo6ZW1iZWRfZmlsZSgnZXhlcmNpc2VzLWdncGxvdC5wZGYnKWANCiogTWFwcyAxMjowMC0xMzowMA0KICArIGByIHhmdW46OmVtYmVkX2ZpbGUoJ2V4YW1wbGUuUm1kJylgICANCiogUHV0dGluZyBpdCBhbGwgdG9nZXRoZXIgMTQ6MDAtMTY6MDANCiAgKyBwbG90cyBmb3IgcHJlc2VudGF0aW9ucw0KICArIG1hcHMgZm9yIHByZXNlbnRhdGlvbnMNCg==